package com.galudisu.handsonic.modules.system.service;

import com.galudisu.handsonic.base.web.shiro.BaseUserService;
import com.galudisu.handsonic.modules.system.domain.User;

import java.util.List;
import java.util.Set;

/**
 * @author Barudisshu
 */
public interface UserService extends BaseUserService {

    User save(User user);

    User findOne(String userId);

    List<User> findAll();

    User findByUsername(String username);

    Set<String> findRolesByUsername(String username);

    Set<String> findPermissionsByUsername(String username);

    void createUser(User user);
    void updateUser(User user);
    void deleteUser(String id);
    void changePassword(String id, String newPassword);
}
